@touchui-base-path: "../";
@fontawesome-path: "../fonts/fontawesome/";
@sourcecodepro-path: "../fonts/sourcecodepro/";
@touchui-path: "../fonts/touchui/";
@main-font-size: 16;
@main-color: #00B0FF;
@main-color-text: contrast(@main-color, @dark-color, @light-color, 51%);
@main-color-dark: darken(@main-color, 5%);
@main-color-dark-text: contrast(@main-color-dark, @dark-color, @light-color, 60%);
@main-color-darker: darken(@main-color, 15%);
@main-background: @dark-color;
@text-color: @light-color;
@link-color: @main-color;
@main-gutter: 30px;
@modal-gutter: 30px;
@terminal-gutter: 10px;
@dropdown-gutter: 15px;
@table-row-background: mix(@main-background, contrast(@main-background), 80%);
@table-row-header-background: @main-color;
@table-row-header-text-color: @main-color-text;
@progress-background: @table-row-background;
@progress-active-background: @main-color;
@swipe-list-background-color: @table-row-background;
@swipe-list-background-open-color: mix(@main-color, @dark-color, 60%);
@modal-background: @light-color;
@modal-backdrop: @dark-color;
@modal-footer-background: fade(contrast(@modal-background), 5%);
@modal-border: fade(contrast(@modal-background), 7%);
@modal-text: @dark-color;
@btn-background: @light-dark-color;
@btn-text: contrast(@light-dark-color, @dark-color, @light-color);
@btn-main-background: @main-color;
@btn-main-text: @main-color-text;
@btn-danger-background: #D40000;
@btn-danger-text: contrast(@btn-danger-background, @dark-color, @light-color);
@online-color: #9AFD00;
@offline-color: red;
@dropdown-color: @main-color;
@dropdown-color-text: @main-color-text;
@dropdown-divider-color: @main-color-dark;
@terminal-color: #0F0;
@terminal-background: @main-background;
@terminal-text-color: @terminal-color;
@terminal-iScroll-color: fade(@terminal-color, 70%);
@dropdown-iScroll-color: fade(@light-darker-dark-color, 70%);
@main-iScroll-color: fade(contrast(@main-background), 70%);
@input-background: contrast(@main-background, @dark-light-color, @light-dark-color, 50%);
@input-text-color: contrast(@input-background);
@addon-background: @dark-lighter-color;
@addon-text-color: @light-color;
@keyboard-background: @dark-light-color;
@keyboard-color: contrast(@keyboard-background);
@keyboard-accept: #00C751;
@keyboard-remove: #9E0000;
@dark-color: black;
@dark-light-color: lighten(@dark-color, 20%);
@dark-lighter-color: lighten(@dark-color, 30%);
@neutral-color: #555;
@light-color: white;
@light-dark-color: darken(@light-color, 2%);
@light-darker-color: darken(@light-color, 20%);
@light-darker-dark-color: darken(@light-color, 50%);
@light-darker-darker-color: darken(@light-color, 55%);
.rem (@property, @value) {
@remValue: @value / 16;
mixin:~'placeholder;@{property}: @{remValue}rem';
}
.gradient(@color: #F5F5F5, @start: #EEE, @stop: #FFF) {
background: @color;
background: -webkit-gradient(linear, left bottom, left top, color-stop(0, @start), color-stop(1, @stop));
background: -ms-linear-gradient(bottom, @start, @stop);
background: -moz-linear-gradient(center bottom, @start 0%, @stop 100%);
background: -o-linear-gradient(@stop, @start);
filter:e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@stop,@start));
}
.bw-gradient(@color: #F5F5F5, @start: 0, @stop: 255) {
background: @color;
background: -webkit-gradient(linear, left bottom, left top, color-stop(0, rgb(@start,@start,@start)), color-stop(1, rgb(@stop,@stop,@stop)));
background: -ms-linear-gradient(bottom, rgb(@start,@start,@start) 0%, rgb(@stop,@stop,@stop) 100%);
background: -moz-linear-gradient(center bottom, rgb(@start,@start,@start) 0%, rgb(@stop,@stop,@stop) 100%);
background: -o-linear-gradient(rgb(@stop,@stop,@stop), rgb(@start,@start,@start));
filter:e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",rgb(@stop,@stop,@stop),rgb(@start,@start,@start)));
}
.bordered(@top-color: #EEE, @right-color: #EEE, @bottom-color: #EEE, @left-color: #EEE) {
border-top: solid 1px @top-color;
border-left: solid 1px @left-color;
border-right: solid 1px @right-color;
border-bottom: solid 1px @bottom-color;
}
.drop-shadow(@x-axis: 0, @y-axis: 1px, @blur: 2px, @alpha: 0.1) {
-webkit-box-shadow: @x-axis @y-axis @blur rgba(0, 0, 0, @alpha);
-moz-box-shadow: @x-axis @y-axis @blur rgba(0, 0, 0, @alpha);
box-shadow: @x-axis @y-axis @blur rgba(0, 0, 0, @alpha);
}
.rounded(@radius: 2px) {
-webkit-border-radius: @radius;
-moz-border-radius: @radius;
border-radius: @radius;
}
.border-radius(@topright: 0, @bottomright: 0, @bottomleft: 0, @topleft: 0) {
-webkit-border-top-right-radius: @topright;
-webkit-border-bottom-right-radius: @bottomright;
-webkit-border-bottom-left-radius: @bottomleft;
-webkit-border-top-left-radius: @topleft;
-moz-border-radius-topright: @topright;
-moz-border-radius-bottomright: @bottomright;
-moz-border-radius-bottomleft: @bottomleft;
-moz-border-radius-topleft: @topleft;
border-top-right-radius: @topright;
border-bottom-right-radius: @bottomright;
border-bottom-left-radius: @bottomleft;
border-top-left-radius: @topleft;
.background-clip(padding-box);
}
.opacity(@opacity: 0.5) {
-moz-opacity: @opacity;
-khtml-opacity: @opacity;
-webkit-opacity: @opacity;
opacity: @opacity;
@opperc: @opacity * 100;
-ms-filter: ~"progid:DXImageTransform.Microsoft.Alpha(opacity=@{opperc})";
filter:~"alpha(opacity=@{opperc})";
}
.transition-duration(@duration: 0.2s) {
-moz-transition-duration: @duration;
-webkit-transition-duration: @duration;
-o-transition-duration: @duration;
transition-duration: @duration;
}
.transform(...) {
-webkit-transform: @arguments;
-moz-transform: @arguments;
-o-transform: @arguments;
-ms-transform: @arguments;
transform: @arguments;
}
.rotation(@deg:5deg) {
.transform(rotate(@deg));
}
.scale(@ratio:1.5) {
.transform(scale(@ratio));
}
.transition(@duration:0.2s, @ease:ease-out) {
-webkit-transition: all @duration @ease;
-moz-transition: all @duration @ease;
-o-transition: all @duration @ease;
transition: all @duration @ease;
}
.inner-shadow(@horizontal:0, @vertical:1px, @blur:2px, @alpha: 0.4) {
-webkit-box-shadow: inset @horizontal @vertical @blur rgba(0, 0, 0, @alpha);
-moz-box-shadow: inset @horizontal @vertical @blur rgba(0, 0, 0, @alpha);
box-shadow: inset @horizontal @vertical @blur rgba(0, 0, 0, @alpha);
}
.box-shadow(@arguments) {
-webkit-box-shadow: @arguments;
-moz-box-shadow: @arguments;
box-shadow: @arguments;
}
.text-shadow(@arguments) {
-webkit-text-shadow: @arguments;
-moz-text-shadow: @arguments;
text-shadow: @arguments;
}
.box-sizing(@sizing: border-box) {
-ms-box-sizing: @sizing;
-moz-box-sizing: @sizing;
-webkit-box-sizing: @sizing;
box-sizing: @sizing;
}
.user-select(@argument: none) {
-webkit-touch-callout: @argument;
-webkit-user-select: @argument;
-moz-user-select: @argument;
-ms-user-select: @argument;
user-select: @argument;
}
.text-adjust(@argument: none) {
-webkit-text-size-adjust: @argument;
-moz-text-size-adjust: @argument;
-ms-text-size-adjust: @argument;
-o-text-size-adjust: @argument;
text-size-adjust: @argument;
}
.columns(@colwidth: 250px, @colcount: 0, @colgap: 50px, @columnRuleColor: #EEE, @columnRuleStyle: solid, @columnRuleWidth: 1px) {
-moz-column-width: @colwidth;
-moz-column-count: @colcount;
-moz-column-gap: @colgap;
-moz-column-rule-color: @columnRuleColor;
-moz-column-rule-style: @columnRuleStyle;
-moz-column-rule-width: @columnRuleWidth;
-webkit-column-width: @colwidth;
-webkit-column-count: @colcount;
-webkit-column-gap: @colgap;
-webkit-column-rule-color: @columnRuleColor;
-webkit-column-rule-style: @columnRuleStyle;
-webkit-column-rule-width: @columnRuleWidth;
column-width: @colwidth;
column-count: @colcount;
column-gap: @colgap;
column-rule-color: @columnRuleColor;
column-rule-style: @columnRuleStyle;
column-rule-width: @columnRuleWidth;
}
.translate(@x:0, @y:0) {
.transform(translate(@x, @y));
}
.background-clip(@argument: padding-box) {
-moz-background-clip: @argument;
-webkit-background-clip: @argument;
background-clip: @argument;
}
.font-icon-reset(@font-face: FontAwesome) {
speak: none;
font-family: @font-face;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
text-rendering: auto;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.flex-display(@display: flex) {
display: ~"-webkit-@{display}";
display: ~"-moz-@{display}";
display: ~"-ms-@{display}box";
display: ~"-ms-@{display}";
display: @display;
}
.flex(@columns: initial) {
-webkit-flex: @columns;
-moz-flex: @columns;
-ms-flex: @columns;
flex: @columns;
}
.flex-direction(@direction: row) {
-webkit-flex-direction: @direction;
-moz-flex-direction: @direction;
-ms-flex-direction: @direction;
flex-direction: @direction;
}
.flex-wrap(@wrap: nowrap) {
-webkit-flex-wrap: @wrap;
-moz-flex-wrap: @wrap;
-ms-flex-wrap: @wrap;
flex-wrap: @wrap;
}
.flex-flow(@flow) {
-webkit-flex-flow: @flow;
-moz-flex-flow: @flow;
-ms-flex-flow: @flow;
flex-flow: @flow;
}
.flex-order(@order: 0) {
-webkit-order: @order;
-moz-order: @order;
-ms-order: @order;
order: @order;
}
.flex-grow(@grow: 0) {
-webkit-flex-grow: @grow;
-moz-flex-grow: @grow;
-ms-flex-grow: @grow;
flex-grow: @grow;
}
.flex-shrink(@shrink: 1) {
-webkit-flex-shrink: @shrink;
-moz-flex-shrink: @shrink;
-ms-flex-shrink: @shrink;
flex-shrink: @shrink;
}
.flex-basis(@width: auto) {
-webkit-flex-basis: @width;
-moz-flex-basis: @width;
-ms-flex-basis: @width;
flex-basis: @width;
}
.justify-content(@justify: flex-start) {
-webkit-justify-content: @justify;
-moz-justify-content: @justify;
-ms-justify-content: @justify;
justify-content: @justify;
}
.align-content(@align: stretch) {
-webkit-align-content: @align;
-moz-align-content: @align;
-ms-align-content: @align;
align-content: @align;
}
.align-items(@align: stretch) {
-webkit-align-items: @align;
-moz-align-items: @align;
-ms-align-items: @align;
align-items: @align;
}
.align-self(@align: auto) {
-webkit-align-self: @align;
-moz-align-self: @align;
-ms-align-self: @align;
align-self: @align;
}
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 300;
src: local('Source Code Pro Light'), local('SourceCodePro-Light'), url('@{sourcecodepro-path}SourceCodePro-Light.woff') format('woff');
}
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 400;
src: local('Source Code Pro'), local('SourceCodePro-Regular'), url('@{sourcecodepro-path}SourceCodePro-Regular.woff') format('woff');
}
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 600;
src: local('Source Code Pro Semibold'), local('SourceCodePro-Semibold'), url('@{sourcecodepro-path}SourceCodePro-Semibold.woff') format('woff');
}
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 700;
src: local('Source Code Pro Bold'), local('SourceCodePro-Bold'), url('@{sourcecodepro-path}SourceCodePro-Bold.woff') format('woff');
}
@font-face {
font-family: 'touchui';
src:url('@{touchui-path}touchui.eot?-gkxfeg');
src:url('@{touchui-path}touchui.eot?-gkxfeg#iefix') format('embedded-opentype'),
url('@{touchui-path}touchui.ttf?-gkxfeg') format('truetype'),
url('@{touchui-path}touchui.woff?-gkxfeg') format('woff'),
url('@{touchui-path}touchui.svg?-gkxfeg#icomoon') format('svg');
font-weight: normal;
font-style: normal;
}
#settings_plugin_touchui {
div.disabled {
opacity: 0.4;
pointer-events: none;
}
legend {
label {
margin-top: 12px;
@media (max-width: 400px) {
float: none;
display: block;
margin: 0;
}
}
}
.track {
.close {
width: 25px;
height: 25px;
background: @main-color;
border: 1px solid @main-color-darker;
position: absolute;
top: 15px;
right: 15px;
border-radius: 50%;
opacity: 1;
&:after {
.font-icon-reset();
content: "\f00d";
color: @main-color-text;
text-align: center;
display: block;
.rem(line-height, 25);
}
}
}
}
#touchui_settings_dialog {
.btn-box {
.flex-display();
.flex-wrap(wrap);
margin: 10px 0;
&:first-child {
margin-top: 0;
}
}
button {
border: 0 none;
.border-radius(0);
}
.label {
.flex-display();
.align-items(center);
.rem(font-size, 14);
.rem(line-height, 20);
.border-radius(0);
padding: 6px 9px;
}
}
#navbar_plugin_touchui {
float: right;
#navbar_touchui_settings {
i:before {
content: "\f10b";
.rem(font-size, 28);
position: relative;
top: 5px;
margin-top: -9px;
}
}
}
.colorPickers {
.flex-display();
.flex-wrap(wrap);
max-width: 520px;
.controls {
.box-sizing();
.flex(1 1 50%);
max-width: 240px;
padding: 0 20px 20px 0;
}
}
.colorPicker {
position: relative;
clear: both;
display: inline-block;
max-width: 100%;
width: 100%;
.track {
background: url("@{touchui-base-path}img/colorpicker.png") no-repeat center center;
height: 150px;
width: 150px;
padding: 10px;
position: absolute;
cursor: crosshair;
left: auto;
right: -71px;
top: -71px;
display: none;
border: 0 none;
z-index: 12;
-webkit-border-radius: 150px;
-moz-border-radius: 150px;
border-radius: 150px;
}
.color {
width: 30px;
height: 100%;
padding: 1px;
border: 1px solid #ccc;
display: block;
position: absolute;
z-index: 11;
right: 0;
top: 0;
background-color: #efefef;
-webkit-border-radius: 0 5px 5px 0;
-moz-border-radius: 0 5px 5px 0;
border-radius: 0 5px 5px 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
cursor: pointer;
}
.colorInner {
display: block;
width: 26px;
height: 100%;
-webkit-border-radius: 0 5px 5px 0;
-moz-border-radius: 0 5px 5px 0;
border-radius: 0 5px 5px 0;
}
.dropdown {
list-style: none;
display: none;
width: 27px;
position: absolute;
top: 28px;
border: 1px solid #ccc;
left: 0;
z-index: 1000;
li {
height: 25px;
cursor: pointer;
}
}
}
#touch {
width: 100%;
height: 100%;
background: @main-background;
font-size: @main-font-size + 0px;
&.emulateTouch {
overflow: hidden;
user-select: none;
body {
overflow: hidden;
.modal-scrollable,
.show-dropdown {
overflow: hidden;
}
.page-container {
height: auto;
min-height: 100%;
}
#webcam_container {
pointer-events: none;
}
}
}
&.touch {
.show-dropdown,
#terminal-scroll {
overflow-y: scroll !important;
-webkit-overflow-scrolling: auto;
}
::-webkit-scrollbar {
width: 2px;
height: 2px;
background: transparent;
}
::-webkit-scrollbar-thumb {
background: @main-color;
}
body {
.modal-scrollable {
position: fixed !important;
}
}
}
&.isTouchscreenUI {
.modal-backdrop {
background: transparent !important;
}
.modal.fade {
opacity: 1 !important;
}
#reloadui_overlay_background,
#offline_overlay_background {
background: transparent !important;
}
}
body {
width: 100%;
height: auto;
min-height: 100%;
background: @main-background;
color: @text-color;
position: relative;
.rem(font-size, 14);
.rem(line-height, 20);
* {
.text-shadow(none) !important;
.box-shadow(none) !important;
font-family: 'Source Code Pro', monospace;
}
[class^="icon-"], [class*=" icon-"],
[class^="fa-"], [class*=" fa-"] {
font-family: FontAwesome;
}
.no-pointer * {
pointer-events: none !important;
}
#touchui_auto_load_resolution,
#touchui_auto_load_touch {
display: none;
}
#navbar {
background-color: @main-color;
border: 0 none !important;
.rem(height, 70);
width: 100%;
position: absolute;
top: 0;
left: 0;
.navbar-inner {
background: transparent !important;
border: 0 none !important;
padding: 0;
margin: 0;
}
}
.tabbable > .nav-tabs li,
#navbar .nav > li {
overflow: hidden;
position: relative;
> a {
background: transparent;
color: @main-color;
.rem(height, 70);
padding: 0;
margin: 0;
position: relative;
z-index: 2;
white-space: nowrap;
text-align: right;
&:active {
background: darken(@main-color, 15%);
}
&:before {
.font-icon-reset();
color: @main-color-text;
content: '\f128';
text-align: center;
.rem(font-size, 32);
.rem(line-height, 70);
display: block;
height: 100%;
width: 100%;
position: absolute;
left: 0;
top: 0;
@media(max-width: 320px) {
font-size: 10vw !important;
}
}
}
&#touchui_dropdown_link a:before {
content: none;
}
}
#tabs {
.flex-display();
.nav,
&.nav {
li {
.flex(0 0 100%);
max-width: 7rem;
@media(max-width: 565px) {
max-width: 5.5rem;
}
@media(max-width: 352px) {
max-width: 5rem;
}
&#touchui_dropdown_link {
pointer-events: none;
}
}
}
}
.visible_touch {
display: block;
&#login_dropdown_loggedin {
display: block !important;
position: static;
width: 100%;
border: 0 none;
margin: 0 !important;
right: auto !important;
padding: 0 !important;
float: none;
}
}
#navbar_login .hidden_touch {
display: none !important;
}
.hidden_touch {
display: none;
}
.accordion,
#navbar .brand {
position: absolute;
top: -5000px;
left: -5000px;
}
.page-container .octoprint-container .tab-content h1 {
font-size: 1.3rem;
line-height: 1.8rem;
padding: 0 0 (@main-gutter / 2);
}
.touchui-accordion {
.accordion-heading {
a:extend(#touch body .page-container .octoprint-container .tab-content h1) {
pointer-events: none;
.fa {
display: none;
}
}
}
.accordion-inner {
padding: 0;
}
}
.page-container {
width: 100%;
.octoprint-container {
margin: 0;
* {
border: 0 none;
.border-radius(0) !important;
}
> .row {
.rem(margin-bottom, 20);
padding-bottom: 20px;
}
.tab-content {
padding: @main-gutter @main-gutter 0;
overflow: visible;
.box-sizing(border-box);
h1 {
color: @text-color;
margin: 0;
}
table {
position: relative;
margin-left: -@main-gutter;
max-width: none;
width: 100vw;
tr {
&:first-child {
th {
margin: 0;
.rem(font-size, 18);
border-bottom: 1px solid @main-background;
background: @table-row-header-background;
color: @table-row-header-text-color;
padding: 13px 5px;
}
}
td, th {
&:first-child {
padding-left: @main-gutter;
}
&:last-child {
padding-right: @main-gutter;
}
}
&:hover {
background-color: @table-row-background;
color: contrast(@table-row-background);
}
th, td {
border-bottom: 1px solid @main-background;
background-color: @table-row-background;
color: contrast(@table-row-background);
}
}
}
}
button, .btn {
transition: background-color 0.2s ease, color 0.2s ease;
background: @btn-main-background;
color: @btn-main-text;
&:active {
background: darken(@btn-main-background, 10%);
color: @btn-main-text;
}
&:focus {
outline: 0 none;
}
&.disabled, &[disabled] {
pointer-events: none;
}
}
.add-on {
background: @addon-background;
color: @addon-text-color;
border-left: 1px solid @main-background;
}
}
}
label, input, button, select, textarea, .input-mini {
height: auto;
.rem(font-size, 14);
.rem(line-height, 20);
}
.control-group {
.control-label,
.controls {
display: block;
float: none;
width: 100%;
margin: 0;
text-align: left;
}
}
.tabbable,
.container {
width: 100%;
}
.container > .row,
.container > .row > .tabbable {
margin: 0;
}
a {
color: @main-color;
&:active {
color: @main-color-darker;
}
&.active {
background: @main-color;
color: @main-color-text;
}
}
li.active {
a {
background: @main-color;
color: @main-color-text;
}
}
button,
.btn {
border-color: darken(@btn-background, 10%);
background: @btn-background;
color: @btn-text;
padding: 6px 15px;
&:disabled {
opacity: .4;
}
&:active {
outline: 0 none;
background: darken(@btn-background, 10%);
color: @btn-text;
}
&-primary {
border-color: darken(@btn-main-background, 10%);
background: @btn-main-background;
color: @btn-main-text;
&:active {
background: darken(@btn-main-background, 10%);
color: @btn-main-text;
}
}
&-danger {
border-color: darken(@btn-danger-background, 10%);
background: @btn-danger-background;
color: @btn-danger-text;
&:active {
background: darken(@btn-danger-background, 10%);
color: @btn-danger-text;
}
}
}
#navbar {
z-index: 2;
.navbar-inner {
.container {
.rem(height, 66);
border:0 none;
.nav {
position: relative;
z-index: 23;
li {
width: 100%;
&.dropdown {
margin: 0;
z-index: 2;
&#all_touchui_settings {
> .dropdown-menu {
min-width: 230px;
}
#touchui_text_nonlink_container {
margin: 0;
list-style: none;
overflow: hidden;
padding: 5px 0;
}
b.caret {
display: none;
}
&.item_active {
background: @main-background;
> a:before {
color: contrast(@main-background);
}
}
&.offline > a:before {
animation-name: blink_offline;
}
&.online > a:before {
animation-name: blink_online;
}
> a:before {
animation-duration: 0.6s;
animation-iteration-count: 5;
content: "\f0c9";
}
&.open {
.dropdown-menu {
.open {
a.dropdown-toggle {
background: transparent;
&:after {
content: "\f0d8" !important;
}
}
}
}
}
li {
&.offline {
a:before {
color: @offline-color;
}
}
&.online {
a:before {
color: @online-color;
}
}
&#conn_link2 {
a:before {
content: "\f1eb";
}
}
&#timelapse_link2 {
a:before {
.rem(font-size, 18);
}
}
&#gcode_link2 {
a:before {
.rem(font-size, 17);
}
}
&#navbar_settings {
a:before {
content: "\f013";
}
}
&#navbar_plugin_announcements {
display: none;
}
#usersettings_button {
&:before {
content: "\f007";
}
}
#logout_button {
&:before {
content: "\f08b";
}
}
#navbar_login {
a.dropdown-toggle {
&:after {
.font-icon-reset();
content: "\f0d7";
position: absolute;
right: 20px;
margin: 0;
.rem(line-height, 40);
}
&:before {
content: "\f023";
}
}
}
&#navbar_plugin_touchui {
a:before {
content: "\f10b";
.rem(font-size, 28);
.rem(line-height, 28);
position: relative;
top: 5px;
margin-top: -9px;
}
}
&#navbar_systemmenu {
> a {
position: relative;
display: block;
float: none;
&.active {
&:after {
content: "\f0d8" !important;
}
}
&:before {
content: "\f085";
.rem(font-size, 19);
}
i {
display: none;
}
&:after {
.font-icon-reset();
content: "\f0d7";
right: 18px;
position: absolute;
top: 12px;
}
}
.dropdown-menu {
a {
&:before {
content: "\f101";
}
}
}
}
a {
.box-sizing(border-box);
color: @main-color-text;
display: block;
text-align: left;
width: 100% !important;
max-width: 100% !important;
height: auto !important;
float: none;
text-overflow: ellipsis;
overflow: hidden;
.icon-wrench{
display: none;
}
&:active {
background: darken(@main-color, 15%);
}
&:hover {
background: transparent;
}
&:before {
.font-icon-reset();
content: '\f128';
display: inline-block;
margin: 0 15px 0 0;
.rem(font-size, 20);
.rem(width, 20);
position: relative;
top: 2px;
text-align: center;
}
}
&:active > a {
background: darken(@main-color, 15%);
}
}
}
}
#youcanhazlogin {
margin: 0;
width: 100%;
overflow: hidden;
#navbar_login {
&.open {
#login_dropdown_loggedout {
padding: 5px @dropdown-gutter @dropdown-gutter !important;
display: block;
}
}
}
.pull-right small a {
display: none;
}
#login_dropdown_loggedout {
display: none;
border-top: 1px solid @dropdown-divider-color;
margin-top: 0;
padding: 0;
backface-visibility: hidden;
* {
.box-sizing(border-box);
}
input[type="text"],
input[type="password"] {
width: 100%;
display: inline-block;
height: 30px;
padding-left: 0;
padding-right: 0;
text-indent: 12px;
}
&.hide + #login_dropdown_loggedin {
display: block;
}
}
}
}
}
}
}
#navbar_plugin_touchui {
float: none;
}
@keyframes blink_offline {
0% {
color: @main-color-text;
}
50% {
color: @offline-color;
}
100% {
color: @main-color-text;
}
}
@keyframes blink_online {
0% {
color: @main-color-text;
}
50% {
color: @online-color;
}
100% {
color: @main-color-text;
}
}
}
#tabs,
#navbar #all_touchui_settings {
#tab_plugin_webcamtab_link,
#tab_plugin_webcamtab_link2 {
display: none !important;
}
#navbar_plugin_pi_support {
a:before {
content: none;
}
span {
margin-left: 5px;
}
}
#temp_link,
#temp_link2 {
a:before {
content: "\f0e4";
}
}
#control_link,
#control_link2 {
a:before {
content: "\f11b";
}
}
#gcode_link,
#gcode_link2 {
a:before {
content: "\f248";
}
}
#term_link,
#term_link2 {
a:before {
content: "\f120";
}
}
#timelapse_link,
#timelapse_link2 {
a:before {
content: "\f03e";
}
}
#webcam_link,
#webcam_link2 {
a:before {
content: "\f030";
}
}
#print_link,
#print_link2 {
a:before {
content: "\f233";
}
}
#sidebar_plugin_filamentmanager_wrapper_link,
#sidebar_plugin_filamentmanager_wrapper_link2 {
a:before {
content: "\f0ae";
}
}
#sidebar_plugin_estop_wrapper_link,
#sidebar_plugin_estop_wrapper_link2 {
a:before {
content: "\f06a";
}
}
#sidebar_plugin_bedlevelingwizard_wrapper_link,
#sidebar_plugin_bedlevelingwizard_wrapper_link2 {
a:before {
content: "\f0b2";
}
}
#sidebar_plugin_touchtest_wrapper_link,
#sidebar_plugin_touchtest_wrapper_link2 {
a:before {
content: "\f044";
}
}
#tab_plugin_enclosure_link,
#tab_plugin_enclosure_link2 {
a:before {
content: "\f1b2";
}
}
#tab_plugin_astroprint_link,
#tab_plugin_astroprint_link2 {
a:before {
content: "\f0c2";
}
}
#navbar_plugin_discordremote,
#navbar_plugin_discordremote2 {
a:before {
content: "\f11b";
}
}
}
#tabs {
#webcam_link {
.rem(font-size, 29);
.rem(line-height, 73);
}
#print_link {
.rem(line-height, 74);
}
&:first-child {
&:before {
font-family: "touchui";
content: "";
position: absolute;
top: -5000px;
}
}
&.nav-tabs {
.itemActive {
background: @main-background;
a {
.border-radius(0);
color: @main-background;
&:after,
&:before {
color: contrast(@main-background);
}
}
}
}
}
input, select, textarea {
background: @input-background;
color: @input-text-color;
text-align: left;
opacity: .8;
.rem(font-size, 14);
.rem(line-height, 20);
&:active, &:focus, &.ui-keyboard-input-current {
opacity: 1;
border-color: fade(@main-color, 90%);
outline: 0;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px fade(@main-color, 60%) !important;
-moz-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px fade(@main-color, 60%) !important;
box-shadow: inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px fade(@main-color, 60%) !important;
}
&.disabled, &[disabled] {
opacity: .4;
}
&[type="file"] {
color: transparent !important;
opacity: 0 !important;
}
}
.uneditable-input {
opacity: .4;
}
.input-append .add-on {
.rem(font-size, 14);
.rem(height, 20);
.rem(line-height, 20);
}
#webcam {
margin: (-@main-gutter + 1px) -@main-gutter 0;
#webcam_rotator,
#webcam_rotator .webcam_fixed_ratio .webcam_fixed_ratio_inner {
display: flex;
align-content: center;
align-items: center;
justify-content: center;
}
#webcam_rotator .webcam_fixed_ratio	{
padding: 0;
height: 100%;
width: 100%;
}
#webcam_container {
background: @main-background;
.text {
color: @text-color;
}
}
#webcam_image {
display: block;
width: 100%;
height: auto;
}
.muted {
padding: 10px 35px;
display: block;
}
.rotate90,
.webcam_rotated .webcam_fixed_ratio {
transform: rotate(0deg) !important;
height: auto;
#webcam_image {
transform: rotate(-90deg) !important;
max-width: ~"calc(100vh - 69px)";
&.flipV {
transform: rotate(-90deg) scaleX(-1) !important;
}
&.flipH {
transform: rotate(-90deg) scaleY(-1) !important;
}
&.flipV.flipH {
transform: rotate(-90deg) scaleY(-1) scaleX(-1) !important;
}
}
}
.webcam_rotated .webcam_fixed_ratio {
padding: 0;
}
@supports (object-fit: contain) {
#webcam_rotator,
#webcam_rotator .webcam_fixed_ratio .webcam_fixed_ratio_inner {
height: ~"calc(100vh - 69px)";
}
#webcam_image {
object-fit: contain;
display: block;
width: 100%;
height: auto;
max-height: 100%;
max-width: 100%;
}
}
}
#printer {
.accordion {
&-heading {
display: none;
}
&-inner {
padding: 0;
hr {
display: none;
}
}
}
.print-control {
.btn {
.flex-display();
.rem(height, 50);
padding: 0;
overflow: hidden;
}
i {
.rem(font-size, 28);
.flex(1 1 100%);
min-width: 100%;
}
.icon-print:before {
content: "\f051";
}
#job_cancel,
#job_pause {
background: @text-color;
color: contrast(@text-color);
&:active {
background: fade(@text-color, 70%);
color: contrast(@text-color);
}
}
#job_pause {
top: 40px;
}
#job_cancel {
top: 80px;
}
}
#state {
padding-top: ~"calc(3.125rem + 60px)";
.progress,
.print-control {
position: absolute;
top: ~"calc(3.125rem + 15px)";
left: 0;
height: 20px;
width: 100%;
margin: 0;
}
.print-control {
top: 0;
}
}
.slimScrollBar, .slimScrollRail {
display: none !important;
}
.dropdown-menu {
left: auto !important;
right: -10px !important;
}
}
#term {
position: relative;
z-index: 1;
.icon-caret-down:before,
.icon-caret-right:before {
.font-icon-reset(FontAwesome);
content: "\f078";
}
.icon-caret-right:before {
content: "\f054";
}
span.muted {
color: fade(@terminal-color, 50%);
}
.row-fluid {
clear: both;
padding-top: 5px;
}
::-webkit-scrollbar-thumb {
background: @terminal-color;
}
a {
color: @terminal-color;
}
button,
.btn {
background: @terminal-color;
color: contrast(@terminal-color, @dark-color, @light-color, 51%);
&:active {
background: transparent;
color: @terminal-color;
}
}
.terminal {
small {
&.pull-left {
margin-right: 30px;
span {
display: block !important;
padding: 10px 0 0 0 !important;
+ span {
display: none !important;;
}
}
}
&.pull-right {
position: absolute;
right: 0;
}
button,
.btn {
padding: 3px 10px;
background: transparent;
color: @terminal-color;
+ span {
padding-left: 7px;
}
&.active {
background: @terminal-color;
color: contrast(@terminal-color, @dark-color, @light-color, 51%);
}
}
}
a:not(.btn) {
.rem(font-size, 35);
i:before {
font-family: FontAwesome;
}
}
button,
.btn {
padding: 4px 12px;
background: @main-background;
color: contrast(@main-background);
&.active {
background: @terminal-color;
color: contrast(@terminal-color, @dark-color, @light-color, 51%);
}
}
}
#terminal-filterpanel,
#termin-filterpanel {//TODO remove #termin in future; backwards compatibility with <1.3.0
width: 100%;
}
#terminal-scroll {
border: 1px solid @terminal-color;
overflow: hidden;
.rem(margin-bottom, 28);
.border-radius(5px, 5px, 0, 0);
height: 69vh;
min-height: 150px;
background: @terminal-background;
z-index: 2;
}
#terminal-output,
#terminal-output-lowfi {
height: auto;
min-height: 0;
max-height: none;
.box-sizing(border-box);
margin-bottom: 26px;
border: 0 none;
margin: 0;
padding: 10px @terminal-gutter @terminal-gutter;
overflow: hidden;
color: @terminal-text-color;
background-color: transparent;
font-size: 0.8rem;
line-height: 1.4rem;
&:before {
font-family: "touchui";
content: "\e601\e605\e604\e603\e602\e600";
display: block;
width: 100%;
margin: 5px auto 0;
position: relative;
.rem(font-size, 34);
.rem(line-height, 62);
letter-spacing: 3px;
text-align: center;
@media (max-width: 350px) {
font-size: 10vw;
}
@media (max-width: 280px) {
font-size: 8vw;
}
}
span:first-child {
&:before {
content: "v?.?.?";
display: block;
position: relative;
left: 0;
margin: -5px 0 20px;
.rem(line-height, 17);
.rem(font-size, 14);
width: 100%;
text-align: center;
}
}
}
#terminal-sendpanel {
position: absolute;
left: 0;
width: 100%;
margin: 0;
top: 69vh;
.rem(font-size, 14);
.muted {
display: none;
}
input, button, .btn {
&:disabled, .disabled {
opacity: 1;
background: mix(@terminal-color, @main-background, 30%);
color: @terminal-color;
}
}
.input-append {
position: relative;
}
input {
width: 100%;
background-color: @main-background;
color: @terminal-color;
border: 1px solid @terminal-color;
padding: 0;
display: block;
z-index: 2;
.rem(font-size, 14);
.rem(height, 30);
text-indent: 10px;
padding-right: 90px;
.box-sizing(border-box);
.border-radius(0, 0, 5px, 5px);
}
button, .btn {
position: absolute;
top: 0;
right: 1px;
background-color: @terminal-color;
color: @main-background;
border: 0 none;
border-top: 1px solid @terminal-color;
border-left: 1px solid @terminal-color;
.text-shadow(0 0 0 transparent);
.border-radius(0, 0, 5px, 0);
.box-sizing();
.rem(height, 30);
.rem(line-height, 20);
.rem(font-size, 18);
z-index: 21;
padding: 4px 12px;
}
.btn {
width: auto;
}
}
}
#scroll {
#term {
.iScrollIndicator {
background: @terminal-iScroll-color !important;
border: 0 none !important;
}
}
}
#temp {
margin-left: -@main-gutter;
margin-right: -@main-gutter;
overflow: hidden;
position: absolute;
left: -99999px;
top: -99999px;
display: block;
max-width: 100vw;
&.active {
position: relative;
left: auto;
top: auto;
}
> div:first-child {
.box-sizing(border-box);
overflow: hidden;
width: 100%;
height: 60vh;
max-height: none;
min-height: 200px;
padding: 0 @main-gutter;
margin: 0 0 @main-gutter;
#temperature-graph {
.box-sizing(border-box);
position: relative;
background-position: center 37%;
background-repeat: no-repeat;
background-size: auto 80%;
width: 100%;
height: 100%;
margin: 0;
.tickLabel, .legendLabel {
color: contrast(@main-background);
}
table {
width: auto;
tr {
background: transparent !important;
&:hover {
background: transparent !important;
td {
background: transparent !important;
}
}
td {
background: transparent !important;
color: contrast(@main-color);
border: 0 none;
&.legendLabel {
padding: 0 15px 0 5px;
}
}
}
}
}
}
> div:last-child {
.box-sizing(border-box);
table {
margin: 0 !important;
width: 100%;
tr {
&:first-child {
th {
.rem(font-size, 18);
&:first-child {
width: 13% !important;
}
&:nth-child(3) {
width: auto !important;
}
@media (max-width: 730px) {
&:last-child {
width: 38vw !important;
.box-sizing();
}
}
}
}
th, td {
.rem(font-size, 16);
padding: 12px;
&:nth-child(1) {
text-align: right;
padding-left: 0;
}
&:nth-child(2) {
text-align: center !important;
}
.dropdown-menu {
margin: 2px 0 9px;
bottom: 100%;
top: auto;
left: auto;
right: 0;
&:before {
border: 10px solid transparent;
border-top-color: @main-color;
border-bottom-color: transparent !important;
position: absolute;
top: auto;
bottom: -18px;
right: 9px;
}
}
&.temperature_offset {
.form-inline {
.input-append {
.flex-wrap(wrap);
max-width: 100%;
}
}
}
.form-inline,
.input-append {
.box-sizing(border-box);
.flex-display(flex);
.flex-direction(row);
.flex-wrap(wrap);
.justify-content(flex-start);
.align-content(stretch);
.align-items(flex-start);
> * {
.flex-order(0);
.flex(0 1 auto);
.align-self(auto);
margin-top: 2px;
margin-bottom: 2px;
}
> .input-append {
.flex(1 1 0%);
.flex-wrap();
padding-right: 10px;
margin-bottom: 0;
margin-top: 0;
}
input, .input-mini {
.flex-order(0);
.flex(1 1 20px);
.align-self(auto);
margin-right: 0px;
padding: 7px 0 7px 15px;
.border-radius(0);
text-align: left;
width: 0% !important;
max-width: none !important;
min-width: 0px;
}
.btn-group,
> button {
.border-radius(0);
.fa, .icon {
pointer-events: none;
}
.btn.dropdown-toggle {
border-left: 1px solid @table-row-background;
}
}
.add-on {
padding: 7px;
margin-right: 1px;
.rem(font-size, 14);
.rem(line-height, 20);
height: auto;
@media (max-width: 474px) {
display: none;
}
}
button {
padding: 7px 15px;
.border-radius(0);
.caret {
width: 11px;
&:after {
content: "\f0d7";
font-family: FontAwesome;
.rem(font-size, 18);
top: -7px;
position: relative;
}
}
}
}
}
}
}
@media (max-width: 730px) {
width: 138vw !important;
margin: 0 0 @main-gutter 0 !important;
transition: left 0.5s ease;
cursor: w-resize;
position: relative;
left: 0;
&.open {
left: -38vw !important;
}
}
}
}
@button-width: 16vw;
@button-width-large: 120px;
@button-width-small: 14vw;
#control {
margin: 0 auto;
max-width: 700px;
overflow: visible;
position: relative;
.jog-panel {
float: right;
margin: 0;
padding: 0;
.box-sizing(border-box);
h1 {
display: none;
}
&#control-jog-xy {
float: left;
margin: 0;
position: relative;
width: @button-width * 3;
@media (min-width: 700px) {
width: @button-width-large * 3;
}
@media (max-width: 450px) {
width: @button-width-small * 3;
}
}
&#control-jog-z {
position: absolute;
right: auto;
left: 56%;
top: 0;
z-index: 1;
@media (max-width: 450px) {
left: 52%;
}
.icon-arrow-up,
.icon-arrow-down {
position: relative;
&:after {
content: "";
position: absolute;
left: 0px;
bottom: 4px;
letter-spacing: 0;
width: 100%;
text-align: center;
height: auto;
line-height: 1;
border-bottom: 5px solid;
.border-radius(2px, 2px, 2px, 2px);
}
}
}
}
> .jog-panel {
&:first-child {
position: relative;
display: block;
overflow: hidden;
float: none;
margin: 0 -20px;
button {
color: contrast(@main-background, @dark-color, @light-color);
background: transparent;
&:active {
color: @btn-main-background;
}
font-size: 36px;
display: inline-block;
padding: 0 !important;
margin: 0;
font-weight: normal;
width: @button-width;
height: 16vw;
font-size: 11vw;
@media (min-width: 700px) {
font-size: 80px !important;
width: @button-width-large;
height: 120px;
}
@media (max-width: 450px) {
width: @button-width-small;
height: 16vw;
}
}
}
}
#control-jog-extrusion {
padding: @main-gutter 0 (@main-gutter / 2) (@main-gutter / 2);
width: 50%;
h1 {
display: none;
}
> div {
> button {
width: 50%;
float: left;
border-right: 1px solid @main-background;
padding-right: 0;
padding-left: 0;
&:last-child {
border-right: 0 none;
}
}
}
@media (max-width: 450px) {
margin-bottom: @main-gutter;
}
}
#control-jog-feedrate {
padding: @main-gutter (@main-gutter / 2) (@main-gutter / 2) 0;
position: relative;
float: left;
width: 50%;
.btn-group {
.btn {
padding-left: 0;
padding-right: 0;
}
}
@media (max-width: 450px) {
margin-top: @main-gutter;
}
}
.custom_section {
.slider-container {
min-width: 200px;
}
}
.slider-container {
position: relative;
&:after {
content: "";
display: block;
clear: both
}
button {
.box-sizing(border-box);
float: right;
width: 25% !important;
position: relative;
padding: 0;
margin: 0;
direction: rtl;
white-space: nowrap;
overflow: hidden;
text-indent: -700px;
border-left: 1px solid @main-background;
&:after {
.font-icon-reset();
content: "\f00c";
width: 100%;
position: absolute;
right: 0;
text-indent: 0;
.rem(font-size, 21);
.rem(line-height, 19);
}
}
input {
.box-sizing(border-box);
float: left;
text-align: right;
width: 75% !important;
padding-left: 90px;
padding-right: 0 !important;
}
label {
position: absolute;
margin: 10px 0 10px 10px;
color: @input-text-color;
z-index: 2;
left: 0;
}
}
#control-jog-extrusion,
#control-jog-feedrate,
.custom_section {
.btn-group.control-box {
height: auto;
margin: 0 0 20px;
button {
margin: 0;
}
}
.input-append.control-box {
height: auto;
margin: 0 38px 20px 0;
.add-on {
padding: 10px;
z-index: 200;
}
input {
margin: 0;
}
}
button, input {
padding: 10px 20px;
margin: 0 0 20px;
width: 100%;
min-height: 40px;
height: auto;
.box-sizing(border-box);
span {
margin-left: 5px;
}
}
@media (max-width: 450px) {
position: static;
float: none;
width: 100%;
padding: 0;
}
}
#control-jog-general {
position: absolute;
top: 0;
right: 0;
width: 16vw;
@media (min-width: 700px) {
width: 120px;
}
@media (max-width: 450px) {
width: 14vw;
}
> div {
display: inline-block;
}
h1 {
display: none;
}
button {
font-size: 36px;
padding: 0 !important;
margin: 0;
font-weight: normal;
overflow: hidden;
color: contrast(@main-background, @dark-color, @light-color);
background: transparent;
&:active {
color: @btn-main-background;
}
width: @button-width;
height: 16vw;
font-size: 11vw;
line-height: 200vw;
@media (min-width: 700px) {
font-size: 80px !important;
width: @button-width-large;
height: 120px;
}
@media (max-width: 450px) {
width: @button-width-small;
height: 16vw;
}
&:before,
&:after {
color: inherit;
font-family: FontAwesome;
.text-shadow(0 0 0 transparent);
display: block;
overflow: hidden;
line-height: 16vw;
@media (min-width: 700px) {
line-height: 120px;
}
}
}
div {
button {
position: relative;
&:before {
font-family: touchui;
content: "\e900"
}
&:first-child {
&:before {
font-family: FontAwesome;
background: transparent;
content: "\f011";
}
}
&:last-child {
&:after {
content: "\f057";
color: @main-color !important;
font-size: 8vw;
position: absolute;
top: -2vw;
right: 1vw;
text-indent: 2000px;
@media (min-width: 700px) {
font-size: 58px;
top: -16px;
right: 13px;
}
}
}
}
}
}
.distance {
.btn-group {
width: 100%;
margin: 0;
button {
background: mix(@btn-main-background, @main-background, 60%);
color: @btn-main-text;
width: 25% !important;
border-right: 1px solid @main-background;
&:last-child {
border-right: 0 none;
}
&.active {
background: @btn-main-background;
color: @btn-main-text;
}
}
}
}
.slider {
.slider-track,
button {
display: none;
}
input {
display: block !important;
}
}
@media all and (orientation: portrait) {
#control-jog-general {
width: 75vw;
margin: 0 auto;
right: auto;
top: 85vw;
float: none;
left: 50%;
margin-left: -37.5vw;
> div > button {
float: left;
}
@media (max-width: 650px) {
top: 87vw;
}
@media (max-width: 500px) {
top: 89vw;
}
@media (max-width: 400px) {
top: 91vw;
}
}
> .jog-panel:first-child,
#control-jog-general {
#control-jog-xy {
margin: 0 auto;
width: 75vw;
float: none;
}
#control-jog-z {
position: static;
width: 75vw;
margin: 15px auto 25vw;
right: auto;
top: auto;
float: none;
overflow: hidden;
> div {
float: left;
}
}
button {
width: 25vw;
height: 20vw;
font-size: 15vw !important;
&:before {
line-height: 20vw;
}
}
}
}
}
#gcode {
#gcode_canvas {
width: 100% !important;
height: 100% !important;
pointer-events: none !important;
}
.slider {
display: none;
}
.progress {
margin: 30px 0 20px;
width: 100%;
}
@media (max-width: 500px) {
.span7, .span5 {
float: none;
width: 100%;
display: block;
margin: 0;
padding: 0;
}
}
}
#connection {
height: auto !important;
}
#connection_wrapper {
button {
margin-top: 20px;
background-color: @main-color;
color: @main-color-text;
&:active {
background-color: @main-color-dark;
}
}
}
#timelapse {
> h1 {
margin: 30px 0 0;
}
.icon-unchecked:before,
.icon-check-empty:before {
content: "\f0c5";
}
.caret {
display: none;
}
.pull-left, .pull-right {
button {
font-size: 1.1rem;
padding: 10px 15px;
}
}
input[type="text"],
input[type="number"],
input[type="password"],
select {
width: 100%;
margin-bottom: 20px;
text-align: left;
}
.help-block {
color: fade(contrast(@main-background), 80%);
padding: 0;
font-size: 0.9em;
line-height: 1rem;
}
.input-append {
position: relative;
margin-bottom: 20px;
input[type="text"],
input[type="number"],
input[type="password"] {
width: 100%;
padding: 10px 50px 10px 10px;
margin: 0 !important;
height: 32px;
.box-sizing(border-box);
.border-radius(0);
}
.add-on {
border-left: 1px solid @main-background;
position: absolute;
right: 0;
padding: 6px;
}
}
.checkbox {
margin-bottom: 20px;
}
> table {
tr {
.timelapse_files_action {
width: 75px;
text-align: right;
}
.timelapse_files_size {
text-align: center;
}
td {
.rem(line-height, 40);
a {
padding: 6px;
margin: -6px;
display: inline-block;
color: @link-color;
&:before {
.rem(font-size, 21);
.rem(line-height, 36);
}
&:active {
color: @link-color;
}
}
}
}
}
}
.progress {
background: @progress-background;
.bar {
background: @progress-active-background;
}
}
#drop_overlay {
display: none !important;
}
#offline_overlay, #reloadui_overlay {
position: fixed;
top:0;
bottom:0;
overflow-y:auto;
-webkit-overflow-scrolling: touch;
#offline_overlay_background {
.transform(translateZ(0));
}
#offline_overlay_wrapper, #reloadui_overlay_wrapper {
padding-top: 20px;
}
.hero-unit {
.rem(font-size, 18);
.rem(line-height, 30);
}
.container {
width: 100%;
.hero-unit {
background-color: @neutral-color;
color: contrast(@neutral-color);
padding: 20px;
.border-radius(0);
h1 {
.rem(font-size, 32) !important;
}
h1, p {
margin-bottom: 10px;
}
}
}
&.iscroll {
top: 0;
bottom: 0;
left: 0;
width: 100%;
overflow: hidden;
position: absolute;
> div:first-child {
position: absolute;
z-index: 1;
-webkit-tap-highlight-color: rgba(0,0,0,0);
width: 100%;
.transform(translateZ(0));
.user-select(none);
.text-adjust(none);
> div {
position: relative;
top: auto;
left: auto;
right: auto;
bottom: auto;
}
}
.iScrollIndicator {
background: @main-iScroll-color !important;
border: 0 none !important;
}
}
}
#files .entry,
#temp .row-fluid {
touch-action: pan-y;
}
#files_wrapper {
position: relative;
.accordion-heading {
display: block;
pointer-events: none;
margin: 40px -@main-gutter 0;
padding: 0.5rem @main-gutter;
background-color: @main-color;
color: @main-color-text;
> a, > a i {
color: @main-color-text;
.rem(font-size, 23);
padding-right: 0;
padding-left: 0;
}
> div {
pointer-events: all;
margin: -8px 5px -8px 0;
&.settings-trigger {
position: relative;
margin-right: -10px;
}
> a {
background: transparent;
padding: 15px 10px !important;
margin: 0;
* {
display: none;
}
&:after {
.font-icon-reset(FontAwesome);
.rem(font-size, 25);
color: @main-color-text;
content: "\f0b0";
}
}
}
.icon-wrench,
.icon-refresh,
.icon-sd-black-14 {
display: none !important;
}
.sd-trigger {
.dropdown-toggle {
&:after {
content: "\f0ea";
top: 3px;
position: relative;
}
}
}
.refresh-trigger {
a {
&:after {
content: "\f021";
}
}
}
.upload-trigger {
a {
&:after {
content: "\f093";
}
}
}
}
#files {
#gcode_upload_progress + div .muted {
display: none;
}
.form-search {
display: none;
}
.slimScrollDiv {
margin: 0 -@main-gutter 10px;
height: auto !important;
clear: both;
}
.scroll-wrapper {
margin: 0 -@main-gutter 10px;
height: auto !important;
overflow: hidden;
clear: both;
}
.text-right.muted {
text-align: center;
}
.upload-buttons,
.folder-button {
.btn {
padding: 12px;
.rem(font-size, 22);
display: block;
width: 100%;
margin-left: 0;
&:last-child {
border-left: 1px solid @main-background;
}
@media (min-width: 510px) {
width: 50%;
display:inline-block;
.border-radius(0, 5px, 5px, 0);
&:first-child {
.border-radius(5px, 0, 0, 5px);
}
}
}
}
.folder-button {
margin-top: 10px;
.btn {
border: 0 none;
width: 100%;
}
}
.gcode_files {
height: auto !important;
margin: 0 -0 10px;
padding: 0;
.entry {
background-color: @swipe-list-background-color;
color: contrast(@swipe-list-background-color);
border-top: 1px solid @main-background;
.rem(font-size, 14);
.rem(line-height, 20);
padding: 15px (@main-gutter + 110px) 15px @main-gutter;
margin: 0;
position: relative;
left: 0;
clear: both;
cursor: w-resize;
transition: left 0.4s ease, background 0.7s ease, color 0.7s ease;
&.open {
left: -(@main-gutter + 40px);
background: @swipe-list-background-open-color;
color: contrast(@swipe-list-background-open-color);
&.large {
left: -(@main-gutter + 150px);
}
&:hover,
&:after {
background: @swipe-list-background-open-color;
color: contrast(@swipe-list-background-open-color);
}
div.action-buttons {
.btn {
color: contrast(@swipe-list-background-open-color);
}
}
div:not(.title) {
color: fade(contrast(@swipe-list-background-open-color), 70%);
}
}
&:after {
transition: left 0.4s ease, background 0.7s ease;
content: "";
display: block;
top: 0;
height: 100%;
width: (@main-gutter + 200px);
right: -(@main-gutter + 200px);
position: absolute;
transition: background 0.7s ease;
background: @swipe-list-background-color;
color: contrast(@swipe-list-background-color);
}
div,
div span {
color: inherit;
}
div:not(.title) {
transition: color 0.7s ease;
color: fade(contrast(@swipe-list-background-color), 70%);
}
&.back {
margin: 0 -@main-gutter;
}
&.back, &.folder {
cursor: default;
&.clickable {
cursor: pointer;
}
.title {
color: contrast(@swipe-list-background-color);
}
.btn {
top: 10px !important;
}
}
.additionalInfo {
padding: 0;
}
div.action-buttons {
position: static;
right: auto;
bottom: auto;
display: inline;
i {
font-size: 32px;
.rem(line-height, 40);
}
.btn.disabled, .btn[disabled] {
.opacity(0.2);
}
.btn {
position: absolute;
left: 100%;
top: 21px;
.border-radius(0);
background: transparent !important;
z-index: 5;
border: 0 none;
.box-shadow(0 0 0 transparent);
.text-shadow(0 0 0 transparent);
color: contrast(@swipe-list-background-color);
transition: left 0.4s ease, background 0.7s ease, color 0.7s ease;
&:first-child {
right: (@main-gutter + 40px);
left: auto;
}
&:last-child {
left: auto;
right: (@main-gutter - 15px);
}
&.toggleAdditionalData + :nth-child(2) {
margin-left: 55px;
margin-top: 2px;
}
&:nth-child(4) {
margin-left: 110px;
margin-top: 2px;
}
}
}
}
}
}
}
.emulateTouch {
.modal-scrollable {
.modal {
z-index: 1 !important;
overflow: hidden;
.transform(translateZ(0));
.user-select(none);
.text-adjust(none);
}
}
}
&.modal-open {
position: fixed;
width: 100%;
overflow: hidden;
}
.modal-backdrop {
background: @modal-backdrop !important;
}
.modal-scrollable {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
bottom: auto;
right: auto;
overflow: auto;
.iScrollIndicator {
background: @main-iScroll-color !important;
border: 0 none !important;
}
.modal {
position: absolute;
.border-radius(0);
-webkit-overflow-scrolling: auto;
background: @modal-background;
color: @modal-text;
-webkit-transition: opacity 0.3s linear, margin-left 0.5s ease-out, margin-top 0.3s ease-out !important;
-moz-transition: opacity 0.3s linear, margin-left 0.5s ease-out, margin-top 0.3s ease-out !important;
-o-transition: opacity 0.3s linear, margin-left 0.5s ease-out, margin-top 0.3s ease-out !important;
transition: opacity 0.3s linear, margin-left 0.5s ease-out, margin-top 0.3s ease-out !important;
top: 0 !important;
bottom: auto !important;
height: auto !important;
left: 0 !important;
width: 95% !important;
margin: 0 !important;
min-height: 100%;
margin-left: -110% !important;
display: block;
.box-sizing(border-box);
.slimScrollDiv, #settings_plugin_pluginmanager_repositorydialog_list {
height: auto !important;
}
&.shake {
-webkit-animation-name: inherit;
-moz-animation-name: inherit;
-o-animation-name: inherit;
animation-name: inherit;
> div {
-webkit-animation-duration: 1s;
-moz-animation-duration: 1s;
-o-animation-duration: 1s;
animation-duration: 1s;
-webkit-animation-fill-mode: both;
-moz-animation-fill-mode: both;
-o-animation-fill-mode: both;
animation-fill-mode: both;
-webkit-animation-name: shake;
-moz-animation-name: shake;
-o-animation-name: shake;
animation-name: shake;
}
}
.accordion-group {
border: 0 none !important;
.accordion-heading {
display: none;
}
.accordion-body {
border: 0 none;
.accordion-inner {
padding: 0;
border: 0 none;
}
}
}
&#connection_dialog {
.btn-primary {
display: none !important;
}
}
&.in {
top: 0 !important;
margin-left: 0% !important;
}
&.show-dropdown {
.modal-header {
.span3 {
height: auto;
}
}
}
.modal {
&-body {
padding: (@modal-gutter - 10px) @modal-gutter;
margin-bottom: 60px;
min-height: 0 !important;
max-height: none !important;
.span3.scrollable,
.nav.nav-pills {
display: none;
}
.span9.scrollable {
width: 100% !important;
overflow: visible;
margin: 0;
padding: 0;
.help-inline {
display: block;
padding: 5px 0 0;
}
}
.pagination ul > li {
> a {
color: @main-color-text;
&:active {
color: contrast(@main-color-darker);
}
}
&.active,
&.disabled {
> a {
color: @modal-text;
}
}
}
}
&-footer {
.border-radius(0);
.box-sizing(border-box);
background: @modal-footer-background;
border-top-color: @modal-border;
position: absolute;
bottom: 0;
left: 0;
width: 100%;
padding-right: @modal-gutter;
padding-left: @modal-gutter;
z-index: 2;
}
&-header {
padding: 20px @modal-gutter;
border-bottom-color: @modal-border;
#settings_dialog_label,
> h3 {
font-size: 1.4rem;
line-height: 1.7rem;
padding: 0 50px 0 0;
color: mix(@modal-background, contrast(@modal-background), 40%);
}
.close {
color: @modal-text;
.rem(font-size, 42);
padding: 13px;
margin-top: -10px;
background: transparent;
opacity: .6;
&:hover {
opacity:1;
}
}
span.hidden {
display: inline-block !important;
position: relative;
padding-left: 10px;
color: contrast(@modal-background);
cursor: pointer;
&:before {
content: "/";
color: mix(@modal-background, contrast(@modal-background), 70%);
margin-right: 10px;
}
&:after {
content: "\f078";
.font-icon-reset(FontAwesome);
font-size: 0.8rem;
text-rendering: auto;
position: relative;
top: -4px;
margin-left: 10px;
}
.show-dropdown {
position: absolute;
top: 40px;
left: 0;
overflow: hidden;
max-height: 68vh;
height: auto;
z-index: 29;
min-height: 0 !important;
margin-bottom: 100px;
min-width: 170px;
overflow-scrolling: touch;
-webkit-overflow-scrolling: touch;
background-color: @modal-background;
border: 1px solid contrast(@modal-background, @light-darker-darker-color, white);
ul {
margin: 0;
padding: 0;
.nav-header {
margin: 0;
.box-sizing(border-box);
.rem(font-size, 11);
}
}
li {
display: block;
width: 100%;
a {
.rem(font-size, 15);
padding: 10px 15px;
.rem(line-height, 24);
margin: 0;
.border-radius(0);
}
}
.iScrollIndicator {
background: contrast(@modal-background, @dropdown-iScroll-color, white) !important;
border: 0 none !important;
}
}
}
}
}
.full-sized-box {
padding: 0 !important;
position: relative;
}
}
}
.controls {
margin-left: 20px;
}
#scroll {
position: absolute;
z-index: 1;
top: 0;
bottom: 0;
left: 0;
width: 100%;
overflow: hidden;
.page-container,
#terminal-scroll-inner,
#terminal-scroll > pre {
position: absolute;
z-index: 1;
-webkit-tap-highlight-color: rgba(0,0,0,0);
width: 100%;
.transform(translateZ(0));
.user-select(none);
.text-adjust(none);
}
.page-container {
z-index: auto;
}
#terminal-scroll {
position: relative;
}
.iScrollIndicator {
background: @main-iScroll-color !important;
border: 0 none !important;
}
}
.ui-keyboard-button {
background: transparent;
color: @keyboard-color;
min-width: 0 !important;
margin: 1px !important;
padding: 0 !important;
border: 0 none;
.rem(font-size, 22);
max-width: 80px;
min-height: 33px;
width: 8vw;
&:active, &.touch-focus {
color: @main-color-text;
background: @main-color;
.border-radius(5px, 5px, 5px, 5px);
position: relative;
margin-top: -32px !important;
padding-bottom: 40px !important;
max-height: 75px;
}
}
.ui-keyboard-right,
.ui-keyboard-left {
color: @keyboard-background;
position: absolute;
top: 4px;
right: 40px;
width: 30px;
&:active, &.touch-focus {
position: absolute;
background: transparent;
margin-top: 0 !important;
padding-bottom: 0 !important;
max-height: 43px;
span {
color: @main-color;
}
}
}
.ui-keyboard-right {
right: 10px;
}
.ui-keyboard-shift {
span {
display: none !important;
}
&:after {
.font-icon-reset();
content: "\f062";
.rem(font-size, 25);
max-height: 43px;
}
}
.ui-keyboard-accept {
clear: right;
}
.ui-keyboard-cancel,
.ui-keyboard-accept {
float: right;
.border-radius(50%,50%,50%,50%);
background: @keyboard-accept;
margin-top: 2px !important;
width: 1.8rem;
height: 1.8rem !important;
.rem(line-height, 20) !important;
text-align: center;
span {
display: none !important;
}
&:after {
.font-icon-reset();
content: "\f00c";
color: @keyboard-background;
}
}
.ui-keyboard-cancel {
background: @btn-danger-background;
margin-right: 10px !important;
@media (max-width: 300px) {
margin-right: 5px !important;
}
&:after {
content: "\f149";
}
}
.ui-keyboard-shift,
.ui-keyboard-default,
.ui-keyboard-meta1,
.ui-keyboard-meta2 {
float: left;
min-width: auto !important;
width: auto;
opacity: .7;
.rem(font-size, 17);
padding: 0 10px !important;
}
.ui-keyboard-keyset {
width: 100%;
}
.ui-keyboard-space {
width: 33vw !important;
max-width: none;
position: relative;
&:after {
.border-radius(5px, 5px, 5px, 5px);
content: "";
display: inline-block;
height: 20px;
width: 100%;
background: mix(@keyboard-background, contrast(@keyboard-background), 70%);
top: 50%;
position: absolute;
left: 0;
margin-top: -10px;
}
&:active, &.touch-focus {
background: transparent;
margin-top: 0 !important;
padding-bottom: 0 !important;
max-height: 43px;
&:after {
background: mix(@keyboard-background, contrast(@keyboard-background), 40%);
}
}
}
.ui-keyboard-bksp {
float: right;
margin-right: 10px;
min-width: 40px !important;
max-width: 40px;
overflow: visible !important;
span {
position: relative;
margin-right: -17px !important;
.rem(line-height, 40);
&:after {
.font-icon-reset();
content: "\f00d";
background: contrast(@keyboard-background);
color: @keyboard-background;
.rem(font-size, 19);
width: 24px;
display: block;
.rem(line-height, 26);
height: 1.6rem;
overflow: hidden;
text-indent: -3px;
}
&:before {
content: "";
background: transparent;
border: 0.8rem solid transparent;
border-right-color: contrast(@keyboard-background);
position: absolute;
left: -1.6rem;
top: 0;
}
}
&:active, &.touch-focus {
background: transparent;
margin-top: 0 !important;
padding-bottom: 0 !important;
max-height: 43px;
span {
&:after {
color: contrast(@keyboard-remove);
background: @keyboard-remove;
}
&:before {
border-right-color: @keyboard-remove;
}
}
}
}
.ui-keyboard {
background: @keyboard-background;
top: auto !important;
bottom: 0;
width: 100%;
.box-sizing(border-box);
}
.ui-keyboard-accept span,
.ui-keyboard-cancel span {
padding: 0 10px !important;
}
.ui-keyboard {
padding: 0.3em;
position: fixed;
left: 0;
top: 0;
z-index: 16000;
}
.ui-keyboard-has-focus {
z-index: 16001;
}
.ui-keyboard div {
font-size: 1.1em;
}
.ui-keyboard-button {
height: 2em;
min-width: 2em;
margin: 0.1em;
cursor: pointer;
overflow: hidden;
line-height: 2em;
-moz-user-focus: ignore;
}
.ui-keyboard-button span {
padding: 0;
margin: 0;
white-space: nowrap;
display: inline-block;
}
.ui-keyboard-button-endrow {
clear: left;
}
.ui-keyboard-space {
width: 15em;
}
.ui-keyboard-empty span,
.ui-keyboard-space span {
display: none;
font: 0/0 a;
.text-shadow(none);
color: transparent;
}
.ui-keyboard-preview-wrapper {
text-align: center;
position: relative;
overflow: hidden;
padding: 4px;
.box-sizing(border-box);
input, textarea {
margin: 0;
padding-right: 60px !important;
padding-left: 15px !important;
}
textarea {
padding-top: 10px;
padding-bottom: 10px;
height: 20vh;
min-height: 70px;
}
}
.ui-keyboard-preview {
background: contrast(@keyboard-background);
color: @keyboard-background;
text-align: left;
display: block !important;
width: 100% !important;
height: auto !important;
padding: 0 15px;
line-height: 2.3rem;
.box-sizing(border-box);
}
.ui-keyboard-keyset {
text-align: center;
white-space: nowrap;
}
.ui-keyboard-input {
text-align: left;
}
.ui-keyboard-placeholder {
color: @keyboard-color;
}
.ui-keyboard-nokeyboard {
color: @keyboard-color;
border-color: @keyboard-background;
}
.ui-keyboard-spacer {
display: inline-block;
width: 1px;
height: 0;
cursor: default;
}
.ui-keyboard-LRM span,
.ui-keyboard-NBSP span,
.ui-keyboard-RLM span,
.ui-keyboard-ZWJ span,
.ui-keyboard-ZWNJ span,
.ui-keyboard-ZWSP span {
font-size: 0.5em;
line-height: 1.5em;
white-space: normal;
}
.ui-keyboard-button.ui-keyboard-combo.ui-state-default {
border-color: @light-dark-color;
}
button.ui-keyboard-accept.ui-keyboard-valid-input {
border-color: #0c0;
background: #080;
color: #fff;
}
button.ui-keyboard-accept.ui-keyboard-valid-input:hover {
background: #0a0;
}
button.ui-keyboard-accept.ui-keyboard-invalid-input {
border-color: #c00;
background: #800;
color: #fff;
.opacity(0.5);
}
button.ui-keyboard-accept.ui-keyboard-invalid-input:hover {
background: #a00;
}
.ui-keyboard-caret {
background: #c00;
width: 1px;
margin-top: 3px;
}
div.ui-body.ui-keyboard button.ui-keyboard-button.ui-btn {
padding: 0.5em 1em;
border-color: transparent;
}
.ui-body .ui-keyboard-button {
width: 3em;
height: 3em;
display: inline-block;
}
.ui-body .ui-keyboard-widekey {
width: 5.5em;
}
.ui-body .ui-keyboard-space {
width: 15em;
display: inline-flex;
height: 2rem;
}
.ui-body .ui-keyboard-space span {
visibility: hidden;
}
.ui-body .ui-keyboard-keyset {
line-height: 0.5em;
}
.ui-body input.ui-input-text,
.ui-body textarea.ui-input-text {
width: 95%;
}
.ui-body .ui-btn-inner {
height: 2em;
padding: 0.2em 0;
margin: 0;
}
.ui-body .ui-btn {
margin: 0;
.rem(font-size, 13);
}
button.ui-keyboard-button.btn {
padding: 1px 6px;
}
button.ui-keyboard-toggle span {
width: 0.8em;
height: 0.8em;
display: inline-block;
background-repeat: no-repeat;
background-position: center center;
background-size: contain;
background-image: url();
}
.ui-keyboard-dark-theme button.ui-keyboard-toggle span {
background-image: url();
}
button.ui-keyboard-toggle.ui-keyboard-disabled span {
background-image: url();
}
.ui-keyboard-dark-theme button.ui-keyboard-toggle.ui-keyboard-disabled span {
background-image: url();
}
.ui-keyboard.ui-keyboard-disabled button:not(.ui-keyboard-toggle),
.ui-keyboard.ui-keyboard-disabled input {
opacity: 0.5;
}
.ui-keyboard-overlay {
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
background: rgba(0,0,0,.5);
}
.ui-keyboard-popup {
display: inline-block;
max-width: 22em;
}
div.ui-keyboard-extender {
float: right;
margin-left: 5px;
}
button.ui-keyboard-extender span {
width: 0.9em;
height: 0.9em;
display: inline-block;
margin-bottom: 3px;
background-repeat: no-repeat;
background-position: center center;
background-size: contain;
background-image: url();
}
.ui-keyboard-dark-theme button.ui-keyboard-extender span {
background-image: url();
}
@media all and (max-width:319px) {
.ui-keyboard div {
.rem(font-size, 9);
}
.ui-keyboard .ui-keyboard-input {
.rem(font-size, 12);
}
.ui-body .ui-btn {
margin: 0;
.rem(font-size, 9);
}
.ui-body .ui-keyboard-button {
width: 1.8em;
height: 2.5em;
}
.ui-body .ui-keyboard-widekey {
width: 4em;
}
.ui-body .ui-keyboard-space {
width: 8em;
}
.ui-body .ui-btn-inner {
height: 2.5em;
padding: 0.3em 0;
}
}
@media all and (min-width:320px) and (max-width:479px) {
.ui-keyboard div {
.rem(font-size, 9);
}
.ui-keyboard .ui-keyboard-input {
.rem(font-size, 14);
}
.ui-body .ui-btn {
margin: 0;
.rem(font-size, 11);
}
.ui-body .ui-keyboard-button {
width: 1.8em;
height: 3em;
}
.ui-body .ui-keyboard-widekey {
width: 4.5em;
}
.ui-body .ui-keyboard-space {
width: 10em;
}
.ui-body .ui-btn-inner {
height: 3em;
padding: 0.7em 0;
}
}
@media all and (min-width:480px) and (max-width:767px) {
.ui-keyboard div {
.rem(font-size, 13);
}
.ui-keyboard .ui-keyboard-input {
.rem(font-size, 14);
}
.ui-body .ui-btn {
margin: 0;
.rem(font-size, 10);
}
.ui-body .ui-keyboard-button {
height: 2.5em;
}
.ui-body .ui-btn-inner {
height: 2.5em;
padding: 0.5em 0;
}
}
.dropdown {
&-toggle {
&.open {
+ .dropdown-menu, .dropdown-menu {
display: block;
}
}
}
&.open {
overflow: visible !important;
.dropdown-menu {
background-color: @dropdown-color !important;
a {
text-indent: 0 !important;
}
}
}
}
.dropdown-submenu {
> a {
&:after {
.font-icon-reset();
content: "\f0d7";
float: none;
position: absolute;
top: 13px;
margin: 0;
right: 30px;
border: 0 none !important;
}
}
&:hover {
>.dropdown-menu {
display: none;
}
}
&.open {
.dropdown-menu {
display: block !important;
}
> a {
&:after {
content: "\f0d8" !important;
}
}
}
}
.dropdown-menu {
.border-radius(0);
.transform(translateZ(0));
background: @dropdown-color;
color: @dropdown-color-text;
border: 1px solid @dropdown-divider-color !important;
margin-top: 10px;
padding: (@dropdown-gutter / 3) 0;
max-width: 100vw;
@media (max-width: 300px) {
width: 90vw;
min-width: 0 !important;
}
&:after {
display: none;
}
li {
p {
.rem(font-size, 14);
.rem(line-height, 25);
float: none;
color: inherit;
margin: 0;
padding: 0 @dropdown-gutter;
}
a {
color: @dropdown-color-text;
.rem(font-size, 15) !important;
width: 100%;
.box-sizing(border-box);
padding: 0 @dropdown-gutter;
.rem(line-height, 40);
i {
color: inherit;
}
&:hover, &:focus {
color: @dropdown-color-text;
background: @dropdown-color;
}
&:active {
background: darken(@dropdown-color, 15%);
}
}
}
.dropdown-menu {
position: static;
z-index: 0;
margin: 0;
float: none;
border: 0 none !important;
padding: 0;
&:before {
display: none;
}
@media (max-width: 300px) {
width: auto;
}
}
&:before {
right: 6vw;
top: -20px;
border-left-width: 10px;
border-right-width: 10px;
border-bottom-width: 10px;
border-bottom-color: @dropdown-color !important;
}
.btn {
background: darken(@btn-main-background, 5%);
&:active {
background: darken(@btn-main-background, 15%);
}
}
.divider {
margin: (@dropdown-gutter / 3) 0;
background-color: @dropdown-divider-color;
border: 0 none;
}
&:before {
content: "";
border: 10px solid transparent;
border-bottom-color: @dropdown-color;
position: absolute;
top: -18px;
right: 27px;
}
}
.ui-pnotify-container {
.border-radius(0);
}
.ui-pnotify-closer {
visibility: visible !important;
padding: 5px 10px;
.rem(font-size, 28);
.glyphicon-remove:after {
font-family: FontAwesome !important;
content: "\f00d";
}
}
.ui-pnotify-sticker {
display: none;
}
.ui-pnotify-title {
margin-bottom: 5px;
}
.ui-pnotify {
position: absolute;
left: 0;
width: 100% !important;
right: auto !important;
}
.pagination {
color: transparent;
ul {
> li {
&.disabled,
&.active {
> a {
background: transparent;
color: @text-color;
}
}
> a {
padding: 10px 15px;
.rem(font-size, 21);
background: @main-color;
color: @main-color-text;
&:active {
background: @main-color-darker;
color: @main-color-dark-text;
}
}
}
}
}
.popover {
background: @main-color;
color: @main-color-text;
border-color: @main-color-dark;
padding: 0;
border-radius: 0;
&-title {
background: @main-color-dark;
border-bottom-color: @main-color-dark;
color: @main-color-dark-text;
font-weight: bold;
border-radius: 0;
}
&-content {
padding: 6px 0;
}
&.bottom .arrow:after {
border-bottom-color: @main-color-dark;
}
&.top .arrow:after {
border-top-color: @main-color-dark;
}
&.left .arrow:after {
border-left-color: @main-color-dark;
}
&.right .arrow:after {
border-right-color: @main-color-dark;
}
}
#navbar_plugin_navbartemp {
overflow: hidden;
> div {
margin: 0;
}
}
#tab_plugin_printhistory_link2 {
a:before {
content: "\f1da" !important;
}
}
#tab_plugin_stats_link2 {
a:before {
content: "\f1fe" !important;
}
}
#tab_plugin_stats {
table {
tr {
td, &:hover {
background: transparent;
}
}
}
}
@psucontrol-on-color: @online-color;
@psucontrol-off-color: #808080;
#navbar .navbar-inner .container .nav li.dropdown#all_touchui_settings li #psucontrol_indicator {
&:before {
content: '\f0e7';
}
&.on:before {
color: @psucontrol-on-color;
}
&.off:before {
color: @psucontrol-off-color;
}
}
#control {
#control-jog-xy {
> div {
height: auto;
left: auto;
}
}
}
#settings_plugin_eeprom_marlin ul.nav.nav-pills{
display: block;
}
#navbar_plugin_octolapse {
display: none;
}
.footer {
.rem(font-size, 14);
position: absolute;
left: 0;
bottom: 0;
width: 100%;
padding: 0 @main-gutter 0;
.box-sizing(border-box);
.flex-display(flex);
.flex-direction(row);
.flex-wrap(nowrap);
.justify-content(space-between);
ul {
color: mix(@main-background, contrast(@main-background), 50%);
.flex-order(0);
.flex(0 0 auto);
.align-self(auto);
&.pull-left {
.flex-order(0);
.flex(1 1 auto);
.align-self(auto);
overflow: hidden;
max-width: 100%;
li {
display: block;
small {
.box-sizing(border-box);
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
padding-right: 10px;
display: block;
}
}
}
li {
margin-left: 0;
.rem(line-height, 20);
a {
display: inline-block;
.rem(width, 20);
.rem(height, 20);
color: mix(@main-background, contrast(@main-background), 50%);
overflow: hidden;
margin: 0;
.rem(font-size, 18);
padding: 0;
&:hover {
color: mix(@main-background, contrast(@main-background), 20%);
text-decoration: none;
}
}
}
}
}
#files_wrapper .entry,
#temp .row-fluid table {
.transform(translateZ(0));
.user-select(none);
}
}
}
